Important for all Apple Printing and Graphics Developers:
The information in this Technical Q & A is still relevant up to and including Mac OS 7.6 with QuickDraw GX 1.1.5. Beginning with the release of Mac OS 8.0, however, Apple plans to deliver a system which incorporates QuickDraw GX graphics and typography only. QuickDraw GX printer drivers and GX printing extensions will not be supported in Mac OS 8.0 or in future Mac OS releases. Apple's goal is to simplify the user experience of printing by unifying the Macintosh graphic and printing architectures and standardizing on the classic Printing Manager. For details on Apple's official announcement, refer to </dev/technotes/gxchange.html> |
Usually, the system uses the System or Application font, which in your case was Japanese, so this should have worked correctly. Since other icons in the list were displaying Japanese names, the code was obviously supporting Japanese text, but something was mistakenly telling it that your garbage text was Roman instead of Japanese. We looked at the data structure that included the text, and the following field was the ScriptID field, which was, in fact, set to smRoman. Changing this to smJapanese (1) and then rebuilding the resource file solves the problem.
In general, GX is good about associating a script ID with all-text data. This
allows multiple scripts to be supported at once (which is good). It does mean,
however, that you have to watch for this problem when localizing your product.
There may also be other places in your product where this is an issue. To find
these, search the resource files for 'smRoman' and scrutinize those areas where
it's found. Be aware that smRoman may also be represented by the constant 0, if
it was not defined properly.